import pandas as pd
import numpy as np

t = pd.DataFrame(np.arange(12).reshape(3, 4), index=list("abc"), columns=list("WXYZ"))
print("t=", t)

print("1---", t.loc["a", "Z"])  # 前面代表行，后面代表列  取a Z对应的值
print("2---", type(t.loc["a", "Z"]))
print("3---", t.loc["a"]) # 取a行
print("4---", t.loc["a":]) # 取a行到最后
print("5---",t.loc[:,"Y"])  # 取列  取Y列
print("6---",t.loc[["a", "c"]]) # 取多行一个写法
print("7---",t.loc[["a", "c"],]) # 取多行一个写法
print("8---",t.loc[:, ["W", "Z"]]) # 取多列
print("9---",t.loc[["a", "c"], ["W", "Z"]]) # 取多行多列

print("10---",t.iloc[1, :])  # 取行
print("11---",t.iloc[:, 2])  # 取列
print("12---",t.iloc[:, [2, 1]]) # 取多列，但2列排1列前
print("13---",t.iloc[[0, 2], [2, 1]]) # 取多行多列，是不定的

# 赋值
t.iloc[1:, :2] = 30
print("14---",t)

t.iloc[1:, :2] = np.nan
print("15---",t)
